export default {
  auth: {
    noAuthKeyFound: "未找到认证信息，无法导出",
  },
  common: {
    submit: "提交",
    operationSuccess: "操作成功",
    cancel: "取消",
    confirm: "确认",
    delete: "删除",
    deleteShort: "删除",
    edit: "编辑",
    save: "保存",
    reset: "重置",
    search: "搜索",
    loading: "加载中...",
    success: "成功",
    error: "错误",
    warning: "警告",
    requestFailed: "请求失败: {status}",
    networkError: "网络错误，请检查您的连接",
    requestSetupError: "请求设置错误",
    info: "信息",
    yes: "是",
    no: "否",
    ok: "确定",
    close: "关闭",
    back: "返回",
    export: "导出",
    import: "导入",
    refresh: "刷新",
    add: "添加",
    create: "创建",
    update: "更新",
    view: "查看",
    detail: "详情",
    more: "更多",
    less: "收起",
    all: "全部",
    none: "无",
    select: "选择",
    selected: "已选择",
    operation: "操作",
    actions: "操作",
    status: "状态",
    enable: "启用",
    disable: "禁用",
    copy: "复制",
    copied: "已复制",
    download: "下载",
    upload: "上传",
    description: "描述",
    language: "语言",
    previousPage: "上一页",
    nextPage: "下一页",
    startTime: "开始时间",
    endTime: "结束时间",
    selectAll: "全选",
    deselectAll: "取消选中",
  },
  login: {
    title: "GPT Load",
    subtitle: "智能负载均衡管理平台",
    welcome: "欢迎回来",
    welcomeDesc: "请输入您的授权密钥以继续",
    authKey: "授权密钥",
    authKeyPlaceholder: "请输入授权密钥",
    loginButton: "登录",
    loginSuccess: "登录成功",
    authKeyRequired: "请输入授权密钥",
  },
  nav: {
    dashboard: "仪表盘",
    keys: "密钥管理",
    logs: "日志",
    settings: "系统设置",
    logout: "退出登录",
  },
  dashboard: {
    title: "仪表盘",
    overview: "概览",
    statistics: "统计信息",
    keyStatistics: "密钥统计",
    totalKeys: "密钥数量",
    activeKeys: "活跃密钥",
    inactiveKeys: "非活跃密钥",
    blacklistedKeys: "黑名单密钥",
    rpm10Min: "10分钟RPM",
    requests24h: "24小时请求",
    errorRate24h: "24小时错误率",
    requestStatistics: "请求统计",
    totalRequests: "总请求数",
    successRequests: "成功请求",
    failedRequests: "失败请求",
    todayRequests: "今日请求",
    requestTrend: "请求趋势",
    last7Days: "最近7天",
    last30Days: "最近30天",
    systemStatus: "系统状态",
    running: "运行中",
    stopped: "已停止",
    healthy: "健康",
    unhealthy: "不健康",
    cpuUsage: "CPU使用率",
    memoryUsage: "内存使用率",
    diskUsage: "磁盘使用率",
    uptime: "运行时间",
  },
  keys: {
    title: "密钥管理",
    groupManagement: "分组管理",
    keyManagement: "密钥管理",
    createGroup: "创建分组",
    createAggregateGroup: "创建聚合分组",
    editAggregateGroup: "编辑聚合分组",
    aggregateGroup: "聚合分组",
    standardGroup: "标准分组",
    subGroups: "子分组",
    subGroup: "子分组",
    subGroupsConfig: "子分组配置",
    selectSubGroup: "选择子分组",
    addSubGroup: "添加子分组",
    atLeastOneSubGroup: "至少需要一个子分组",
    noAvailableSubGroups: "没有可用的子分组，请先创建标准分组",
    noMoreAvailableSubGroups: "没有更多可用的子分组",
    allSubGroupsSelected: "所有可用的子分组已被选择",
    selectChannelTypeFirst: "请先选择渠道类型",
    channelTypeChanged: "渠道类型已变更，子分组配置已清空",
    duplicateSubGroup: "不能重复选择同一个子分组",
    weightZeroTip: "权重为0表示暂时禁用该子分组",
    disabled: "已禁用",
    groupNamePlaceholder: "例如：openai-pool",
    displayNamePlaceholder: "例如：OpenAI 聚合池",
    descriptionPlaceholder: "输入分组描述信息...",
    aggregateProxyKeysTooltip: "聚合分组的代理密钥，留空则使用全局代理密钥",
    subGroupTooltip: "根据所选渠道类型显示可用的标准分组，权重决定流量分配比例",
    editGroup: "编辑分组",
    deleteGroup: "删除分组",
    confirmDeleteGroup: "确定要删除分组 {name} 吗？",
    dangerousOperation: "这是一个危险的操作，将删除分组 ",
    toConfirmDeletion: " 下的所有密钥。请输入分组名称以确认：",
    confirmDelete: "确认删除",
    copyGroup: "复制分组",
    groupName: "分组名称",
    groupDescription: "分组描述",
    groupEndpoint: "分组端点",
    proxyKeys: "代理密钥",
    createKey: "创建密钥",
    editKey: "编辑密钥",
    deleteKey: "删除密钥",
    keyValue: "密钥值",
    keyStatus: "密钥状态",
    keyChannel: "通道类型",
    checkStatus: "检查状态",
    checkNow: "立即检查",
    checkAll: "检查全部",
    lastCheckTime: "最后检查时间",
    usageCount: "使用次数",
    errorCount: "错误次数",
    blacklistCount: "黑名单次数",
    valid: "有效",
    invalid: "无效",
    checking: "检查中",
    unchecked: "未检查",
    addToBlacklist: "加入黑名单",
    removeFromBlacklist: "移出黑名单",
    batchOperation: "批量操作",
    batchDelete: "批量删除",
    batchEnable: "批量启用",
    batchDisable: "批量禁用",
    importKeys: "导入密钥",
    exportKeys: "导出密钥",
    keyFormat: "密钥格式",
    onePerLine: "每行一个",
    separated: "分隔符分隔",
    keyPlaceholder: "请输入密钥，每行一个",
    noGroups: "暂无分组",
    noKeys: "暂无密钥",
    createFirstGroup: "创建第一个分组",
    createFirstKey: "添加第一个密钥",
    searchGroupPlaceholder: "搜索分组名称...",
    noMatchingGroups: "未找到匹配的分组",
    addKey: "添加密钥",
    exportAllKeys: "导出所有密钥",
    exportValidKeys: "导出有效密钥",
    exportInvalidKeys: "导出无效密钥",
    restoreAllInvalidKeys: "恢复所有无效密钥",
    clearAllInvalidKeys: "清空所有无效密钥",
    clearAllKeys: "清空所有密钥",
    validateAllKeys: "验证所有密钥",
    validateValidKeys: "验证有效密钥",
    validateInvalidKeys: "验证无效密钥",
    keyCopied: "密钥已复制到剪贴板",
    copyFailed: "复制失败",
    testingKey: "正在测试密钥...",
    testSuccess: "密钥测试成功 (耗时: {duration})",
    testFailed: "密钥测试失败: 无效的API密钥",
    restoreKey: "恢复密钥",
    confirmRestoreKey: '确定要恢复密钥"{key}"吗？',
    confirmDeleteKey: '确定要删除密钥"{key}"吗？',
    restoreSuccess: "恢复成功",
    validatingKeys: "正在验证{type}密钥...",
    clearKeys: "清除密钥",
    confirmClearInvalidKeys: "确定要清除所有无效密钥吗？此操作不可恢复！",
    confirmClearAllKeys: "此操作将永久删除该分组下的所有密钥，且不可恢复！确定要继续吗？",
    clearSuccess: "清除成功",
    selectGroup: "请选择分组",
    clickToCopy: "点击复制",
    urlCopied: "地址已复制到剪贴板",
    keyCount: "密钥数量",
    activeKeyCount: "有效密钥数",
    invalidKeyCount: "无效密钥数",
    stats24Hour: "24小时请求",
    stats24HourFailed: "24小时失败请求",
    stats24HourFailureRate: "24小时失败率",
    stats7Day: "7天请求",
    stats7DayFailed: "7天失败请求",
    stats7DayFailureRate: "7天失败率",
    stats30Day: "30天请求",
    stats30DayFailed: "30天失败请求",
    stats30DayFailureRate: "30天失败率",
    detailInfo: "详细信息",
    basicInfo: "基础信息",
    displayName: "显示名称",
    channelType: "渠道类型",
    sortOrder: "排序",
    testModel: "测试模型",
    testPath: "测试路径",
    hideKeys: "隐藏密钥",
    showKeys: "显示密钥",
    copyKeys: "复制密钥",
    generate: "生成",
    confirmGenerate: "确认生成",
    generateProxyKeys: "生成代理密钥",
    enterKeysCount: "请输入要生成的密钥数量",
    enterCountPlaceholder: "请输入数量",
    generatedKeysWillAppend: "生成的密钥将会追加到现有密钥列表中",
    keysGeneratedSuccess: "成功生成 {count} 个密钥",
    noKeysToCopy: "没有可复制的密钥",
    keysCopiedToClipboard: "密钥已复制到剪贴板",
    copyFailedManual: "复制失败，请手动复制",
    sourceGroupNotExist: "源分组不存在",
    noSubGroups: "暂无子分组",
    activeSubGroups: "有效子分组",
    disabledSubGroups: "禁用子分组",
    unavailableSubGroups: "无效子分组",
    editWeight: "编辑权重",
    deleteSubGroup: "删除子分组",
    confirmDeleteSubGroup: '确定要删除子分组 "{name}" 吗？',
    deleteSubGroupSuccess: "删除子分组成功",
    deleteSubGroupFailed: "删除子分组失败",
    loadSubGroupsFailed: "加载子分组列表失败",
    updateWeightSuccess: "更新权重成功",
    enterWeight: "请输入权重",
    weightCannotBeNegative: "权重不能为负数",
    weightMaxExceeded: "权重不能超过1000",
    newWeight: "新权重",
    currentWeight: "当前权重",
    previewPercentage: "预览百分比",
    weightPreviewNote: "此为预览百分比，假设其他子分组权重不变",
    selectSubGroups: "选择子分组",
    addMoreSubGroup: "添加更多子分组",
    noMoreAvailableGroups: "没有更多可用的分组",
    editingSubGroup: "正在编辑的子分组",
    groupId: "分组ID",
    copyGroupSuccess: '复制成功！已创建新分组 "{groupName}"',
    copyGroupWithKeysSuccess:
      '复制成功！已创建新分组 "{groupName}"，密钥正在后台导入，请稍后查看进度',
    copyGroupTitle: "复制分组 - {groupName}",
    newGroupNameLabel: "新分组名称:",
    keyHandling: "密钥处理",
    copyAllKeys: "复制所有密钥",
    copyValidKeysOnly: "仅复制有效密钥",
    dontCopyKeys: "不复制密钥",
    confirmCopy: "确认复制",
    upstreamAddresses: "上游地址",
    upstream: "上游",
    weight: "权重",
    advancedConfig: "高级配置",
    aggregateReferences: "聚合引用",
    groupInfo: "分组信息",
    viewGroupInfo: "查看分组信息",
    configKey: "配置键",
    noDescription: "暂无描述",
    customHeaders: "自定义请求头",
    emptyValue: "(空值)",
    paramOverrides: "参数覆盖",
    enterModelName: "请输入模型名称",
    enterUpstreamUrl: "请输入上游地址",
    enterValidationPath: "请输入验证端点路径",
    enterGroupName: "请输入分组名称",
    groupNamePattern: "只能包含小写字母、数字、中划线或下划线，长度1-100位",
    selectChannelType: "请选择渠道类型",
    enterTestModel: "请输入测试模型",
    atLeastOneUpstream: "至少需要一个上游地址",
    invalidJsonFormat: "参数覆盖必须是有效的 JSON 格式",
    groupNameTooltip:
      "作为API路由的一部分，只能包含小写字母、数字、中划线或下划线，长度1-100位。例如：gemini、openai-2",
    displayNameTooltip:
      "用于在界面上显示的友好名称，可以包含中文和特殊字符。如果不填写，将使用分组名称作为显示名称",
    channelTypeTooltip:
      "选择API提供商类型，决定了请求格式和认证方式。支持OpenAI、Gemini、Anthropic等主流AI服务商",
    sortOrderTooltip:
      "决定分组在列表中的显示顺序，数字越小越靠前。建议使用10、20、30这样的间隔数字，便于后续调整",
    sortValue: "排序值",
    testModelTooltip:
      "用于验证API密钥有效性的模型名称。系统会使用这个模型发送测试请求来检查密钥是否可用，请尽量使用轻量快速的模型",
    testPathTooltip1: "自定义用于验证密钥的API端点路径。如果不填写，将使用默认路径",
    testPathTooltip2: "如需使用非标准路径，请在此填写完整的API路径",
    optionalCustomValidationPath: "可选，自定义用于验证key的API路径",
    proxyKeysTooltip: "分组专用代理密钥，用于访问此分组的代理端点。多个密钥请用逗号分隔。",
    proxyKeysCopied: "代理密钥已复制到剪贴板",
    multiKeysPlaceholder: "多个密钥请用英文逗号 , 分隔",
    descriptionTooltip: "分组的详细说明，帮助团队成员了解该分组的用途和特点。支持多行文本",
    upstreamTooltip: "API服务器的完整URL地址。多个上游可以实现负载均衡和故障转移，提高服务可用性",
    weightTooltip:
      "负载均衡权重配置。权重决定流量分配比例，数值越大获得的流量越多。权重为0时禁用该上游（不接收任何请求）。示例：权重2:1表示前者获得约67%的流量",
    addUpstream: "添加上游地址",
    groupConfig: "分组配置",
    groupConfigTooltip:
      "针对此分组的专用配置参数，如超时时间、重试次数等。这些配置会覆盖全局默认设置",
    config: "配置",
    configTooltip: "选择要配置的参数类型，然后设置对应的数值。不同参数有不同的作用和取值范围",
    selectConfigParam: "请选择配置参数",
    paramValue: "参数值",
    setConfigValue: "设置此配置项的值",
    addConfigParam: "添加配置参数",
    headerRulesTooltip1: "在代理请求转发至上游服务前，对 HTTP 请求头进行添加、覆盖或移除操作。",
    supportedVariables: "支持动态变量",
    clientIpVar: "客户端IP地址",
    groupNameVar: "分组名称",
    apiKeyVar: "当前轮询的API密钥",
    timestampMsVar: "毫秒时间戳",
    timestampSVar: "秒时间戳",
    header: "请求头",
    headerTooltip: "配置HTTP请求头的名称、值和操作类型。移除操作会删除指定的请求头",
    headerName: "Header名称",
    duplicateHeader: "Header名称重复",
    headerValuePlaceholder: "支持变量，例如：${CLIENT_IP}",
    willRemoveFromRequest: "将从请求中移除",
    removeToggleTooltip: "开启移除开关将删除此请求头，关闭则添加或覆盖此请求头",
    addHeader: "添加请求头",
    paramOverridesTooltip:
      "使用JSON格式定义要覆盖的API请求参数。这些参数会在发送请求时合并到原始参数中",
    never: "从未",
    daysAgo: "{days}天前",
    hoursAgo: "{hours}小时前",
    minutesAgo: "{minutes}分钟前",
    secondsAgo: "{seconds}秒前",
    justNow: "刚刚",
    restoreKeys: "恢复密钥",
    confirmRestoreAllInvalid: "确定要恢复所有无效密钥吗？",
    validatingKeysMsg: "正在验证{type}密钥...",
    confirmClear: "确认清空",
    enterGroupNameToConfirm: "请输入分组名称以确认",
    dangerousOperationWarning1: "这是一个非常危险的操作，将删除此分组下的",
    dangerousOperationWarning2: "密钥。为防止误操作，请输入分组名称 ",
    toConfirm: " 以确认。",
    incorrectGroupName: "分组名称输入不正确",
    clearAllKeysSuccess: "已成功清空所有密钥",
    allStatus: "全部状态",
    keyExactMatch: "Key 精确匹配",
    searchByName: "搜索分组名称...",
    noMatchingKeys: "没有找到匹配的密钥",
    showHide: "显示/隐藏",
    requests: "请求",
    failures: "失败",
    unused: "未使用",
    test: "测试",
    restore: "恢复",
    requestsShort: "请求",
    failuresShort: "失败",
    testShort: "测试",
    restoreShort: "恢复",
    validShort: "有效",
    invalidShort: "无效",
    testKey: "测试密钥",
    totalRecords: "共 {total} 条记录",
    recordsPerPage: "{count}条/页",
    pageInfo: "第 {current} 页，共 {total} 页",
    importTaskStarted: "密钥导入任务已开始，请稍后在下方查看进度。",
    deleteTaskStarted: "密钥删除任务已开始，请稍后在下方查看进度。",
    addKeysToGroup: "为 {group} 添加密钥",
    deleteKeysFromGroup: "删除 {group} 的密钥",
    currentGroup: "当前分组",
    enterKeysPlaceholder: "输入密钥，每行一个",
    enterKeysToDeletePlaceholder: "输入要删除的密钥，每行一个",
    group: "分组",
    notesUpdated: "备注已更新",
    editNotes: "编辑备注",
    notes: "备注",
    editKeyNotes: "编辑密钥备注",
    enterNotes: "请输入备注...",
  },
  subGroups: {
    addSubGroup: "添加子分组",
    subGroup: "子分组",
    totalSubGroups: "共 {total} 个子分组",
    sortedByWeight: "按权重降序排序",
    noSubGroups: "暂无子分组",
    loadFailed: "加载子分组列表失败",
    removeSubGroup: "移除子分组",
    confirmRemoveSubGroup: '确定要从聚合分组中移除子分组 "{name}" 吗？',
    editWeight: "编辑权重",
    weight: "权重",
    remove: "移除",
    viewGroupInfo: "查看分组信息",
    viewSubGroup: "查看子分组",
    statusActive: "有效",
    statusDisabled: "禁用",
    statusUnavailable: "无效",
  },
  logs: {
    title: "日志",
    requestLogs: "请求日志",
    systemLogs: "系统日志",
    errorLogs: "错误日志",
    accessLogs: "访问日志",
    loadFailed: "加载日志失败",
    requestFailed: "加载日志请求失败",
    copiedToClipboard: "{type}已复制到剪贴板",
    copyFailed: "复制{type}失败",
    retryRequest: "重试请求",
    finalRequest: "最终请求",
    time: "时间",
    requestType: "请求类型",
    responseType: "响应类型",
    stream: "流式",
    nonStream: "非流",
    statusCode: "状态码",
    duration: "耗时(ms)",
    model: "模型",
    sourceIP: "源IP",
    groupName: "分组名",
    parentGroup: "聚合分组",
    parentGroupName: "聚合分组名",
    errorMessage: "错误信息",
    exportLogs: "导出密钥",
    totalRecords: "共 {total} 条记录",
    recordsPerPage: "{count}条/页",
    previousPage: "上一页",
    nextPage: "下一页",
    pageInfo: "第 {current} 页，共 {total} 页",
    requestDetails: "请求详情",
    basicInfo: "基本信息",
    key: "密钥",
    group: "分组",
    requestId: "请求ID",
    requestTime: "请求时间",
    requestMethod: "请求方法",
    requestPath: "请求路径",
    requestBody: "请求体",
    responseStatus: "响应状态",
    responseTime: "响应时间",
    responseBody: "响应体",
    clientIp: "IP地址",
    userAgent: "用户代理",
    stackTrace: "堆栈跟踪",
    logLevel: "日志级别",
    logTime: "日志时间",
    logMessage: "日志消息",
    clearLogs: "清除日志",
    filterLogs: "筛选日志",
    searchLogs: "搜索日志",
    noLogs: "暂无日志",
    showDetails: "显示详情",
    hideDetails: "隐藏详情",
    requestInfo: "请求信息",
    upstreamAddress: "上游地址",
    requestContent: "请求内容",
    errorInfo: "错误信息",
    customColumns: "自定义列",
  },
  settings: {
    title: "系统设置",
    general: "基础设置",
    security: "安全设置",
    performance: "性能设置",
    notification: "通知设置",
    advanced: "高级设置",
    systemConfig: "系统配置",
    appUrl: "应用地址",
    loadFailed: "获取设置失败",
    pleaseInput: "请输入{field}",
    minValueError: "值不能小于{value}",
    inputNumber: "请输入数值",
    inputContent: "请输入内容",
    saveSettings: "保存设置",
    saving: "保存中...",
    globalProxyKeys: "全局代理密钥",
    requestTimeout: "请求超时",
    connectTimeout: "连接超时",
    maxRetries: "最大重试次数",
    blacklistThreshold: "黑名单阈值",
    keyValidationInterval: "密钥验证间隔",
    logRetentionDays: "日志保留天数",
    enableRequestLogging: "启用请求日志",
    enableErrorLogging: "启用错误日志",
    enableDebugMode: "启用调试模式",
    proxyUrl: "代理服务器地址",
    corsEnabled: "启用CORS",
    allowedOrigins: "允许的源",
    allowedMethods: "允许的方法",
    allowedHeaders: "允许的头",
    resetSettings: "重置设置",
    importSettings: "导入设置",
    exportSettings: "导出设置",
    settingsSaved: "设置已保存",
    settingsReset: "设置已重置",
    confirmReset: "确认重置所有设置？",
    dangerZone: "危险区域",
    clearAllData: "清除所有数据",
    confirmClearData: "此操作将删除所有数据且不可恢复，确认继续？",
  },
  footer: {
    checking: "检查中...",
    latestVersion: "最新版本",
    updateAvailable: "有更新",
    checkFailed: "检查失败",
    docs: "文档",
    officialDocs: "官方文档",
    viewSource: "查看源码",
    feedback: "反馈",
    reportIssue: "问题反馈",
    contributors: "贡献者",
    viewContributors: "查看贡献者",
    joinGroup: "加入群组",
  },
  charts: {
    requestTrend24h: "24小时请求趋势",
    allGroups: "全部分组",
  },
  security: {
    warningsWithHigh: "发现 {count} 个安全配置问题，{highCount} 个需要优先处理",
    warningsSuggestions: "发现 {count} 个安全配置建议",
    important: "重要",
    suggestion: "建议",
    tip: "提示",
    configReminder: "安全配置提醒",
    viewDetails: "查看详细问题",
    configDocs: "配置文档",
    dontRemind: "不再提醒",
  },
  task: {
    processing: "正在处理任务...",
    completed: "任务已完成。",
    hideProgress: "隐藏进度条",
    validatingKeys: "正在验证分组 [{groupName}] 的密钥",
    importingKeys: "正在向分组 [{groupName}] 导入密钥",
    deletingKeys: "正在删除分组 [{groupName}] 的密钥",
    validationCompleted:
      "密钥验证完成，处理了 {total} 个密钥，其中 {valid} 个成功，{invalid} 个失败。请注意：验证失败并不一定拉黑该密钥，需要失败次数达到阈值才会拉黑。",
    importCompleted: "密钥导入完成，成功添加 {added} 个密钥，忽略了 {ignored} 个。",
    deleteCompleted: "密钥删除完成，成功删除 {deleted} 个密钥，忽略了 {ignored} 个。",
  },
  theme: {
    auto: "自动模式",
    light: "浅色模式",
    dark: "深色模式",
    current: "当前",
    clickToSwitch: "点击切换到{mode}",
  },
  encryptionAlert: {
    title: "⚠️ 加密配置错误",
    viewSolution: "查看解决方案",
    viewDocs: "查看文档",
    scenario: {
      dataNotEncrypted: {
        step1: "停止服务",
        step2: "执行密钥迁移命令：",
        step3: "重启服务",
      },
      keyMismatch: {
        solution1Title: "方案一：使用正确的密钥（推荐）",
        solution1Step1: "在 .env 文件中配置正确的 ENCRYPTION_KEY：",
        solution1Step2: "重启服务",
        solution2Title: "方案二：重新加密数据（如果确定要使用新密钥）",
        solution2Step1: "停止服务",
        solution2Step2: "执行密钥迁移到新密钥：",
        solution2Step3: "更新 .env 配置为新密钥",
        solution2Step4: "重启服务",
      },
      keyNotConfigured: {
        solution1Title: "方案一：配置加密密钥（推荐）",
        solution1Step1: "在 .env 文件中配置与加密时相同的 ENCRYPTION_KEY：",
        solution1Step2: "重启服务",
        solution2Title: "方案二：解密数据",
        solution2Step1: "停止服务",
        solution2Step2: "执行解密命令：",
        solution2Step3: "重启服务",
      },
    },
  },
};
